﻿using IterationLife.System.Models;
using Util.Iocs;

namespace IterationLife.System.Services
{
    /// <summary>
    /// 提供用户登录相关Api
    /// </summary>
    public interface ISignInManager:IDependency
    {
        /// <summary>
        /// 密码登录
        /// </summary>
        /// <param name="account"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        SignInResult PasswordSignIn(string account, string password);

        /// <summary>
        /// 第三方登录
        /// </summary>
        /// <param name="loginProvider"></param>
        /// <param name="externalId"></param>
        /// <returns></returns>
        SignInResult ExternalLoginSignIn(string loginProvider, string externalId);
        SignInResult SignIn(User user);
    }
}
